Graphical user interfaces (GUIs) allow users to engage with software applications through graphical icons and visual indicators. Compared to text-based or command line user interfaces, which depend on users memorizing command words, GUIs provide an easy, less error prone approach for interacting with software applications. GUIs can take on many forms. Some GUIs may be, for instance, web-based GUIs that can be displayed a screen of a computing device.
In many circumstances, the arrangement of graphical elements within a GUI can be constrained by the software application. Users that want to modify the arrangement can submit a request to the developers of the software application who then may update the GUI layout. Yet, this process of updating the GUI may be overly time consuming, sometimes taking days or weeks. And since the arrangement of elements cannot be quickly adjusted, the ability for users to tailor the GUI layout to support their individual preferences may be limited.